package com.itheima.Service;

import com.itheima.pojo.PageResult;
import com.itheima.pojo.ProductFavorite;
import com.itheima.pojo.FavoriteQueryParam;

import java.util.List;
import java.util.Map;

public interface ProductFavoriteService {

    /**
     * 添加商品到收藏
     */
    void add(ProductFavorite pf);

    /**
     * 取消收藏商品
     */
    void cancel(Integer userId, Integer productId);

    /**
     * 批量取消收藏
     */
    void batchCancel(Integer userId, List<Integer> productIds);

    /**
     * 获取用户收藏列表
     */
    PageResult<ProductFavorite> list(FavoriteQueryParam param);

    /**
     * 检查商品是否已收藏
     */
    boolean checkStatus(Integer userId, Integer productId);

    /**
     * 批量检查商品收藏状态
     */
    Map<Integer, Boolean> batchCheckStatus(Integer userId, List<Integer> productIds);
}